package com.yidian.server.order;

import java.util.List;
import java.util.Map;

/**
 * @author whb
 * @create 2021-08-26 09:48
 * @desciption 购物车Service
 */
public interface CartService {
    /**
     * 从redis中获取购物车信息
     * @param username
     * @return
     */
    public List<Map<String,Object>> findCartList(String username);

    /**
     * 添加商品到购物车
     * @param username
     * @param skuId
     * @param num
     */
    public void addItem(String username, String skuId,Integer num);

    /**
     * 更新选中状态
     * @param username
     * @param skuId
     * @param checked
     * @return
     */
    public boolean updateChecked(String username,String skuId,boolean checked);

    /**
     * 删除购物车中被选中的商品
     * @param username
     */
    public void deleteCheckedCart(String username);

    /**
     * 计算购物车选中商品的优惠金额
     * @param username
     * @return
     */
    public int preferential(String username);

    /**
     * 获取最新的购物车列表（购物车商品价格和数据库商品价格同步）
     * @param username
     * @return
     */
    public List<Map<String,Object>> findNewOrderItemList(String username);
}
